#!/usr/bin/env bash


# 重命令文件夹下的文件按规则换成 01 ---99
function subFolderFilesRename(){
	p_dir=$1
	echo "[INFO] p_dir = "p_dir
	for entry in `ls $p_dir`; do
	    echo "[INFO] old_file_name = "${entry}
	    split_num=`echo ${entry} |awk -F "-" '{print NF}'`
	    echo "[INFO] split_num = "$split_num
		# 大于 -gt (greater than)
		# 小于 -lt (less than)
		# 大于或等于 -ge (greater than or equal)
		# 小于或等于 -le (less than or equal)
		# 不相等 -ne （not equal）
		if [[ ${split_num} -ge 2 ]]; then
			echo "[INFO] ${split_num} 大于或等于 2 "
			split_name1=`echo ${entry} | awk -F "-" '{print $NF}'`
			echo "[INFO] split_name1 = "${split_name1}
			split_name2=`echo ${split_name1} | awk -F "." '{print $1}'`
			echo "[INFO] split_name2 = "${split_name2}
			if [[ ${split_name2} -le 9 ]]; then
				echo "[INFO] ${split_num} 小于或等于 9 "
				new_name="0"${split_name2}".jpg"
			else
				echo "[INFO] ${split_num} 大于 9 "
				new_name=${split_name2}".jpg"
			fi
		else
			split_name3=`echo ${entry} | awk -F "." '{print $1}'`
			echo "[INFO] split_name3 = "${split_name3}
			if [[ ${split_name3} -le 999 ]]; then
				echo "[INFO] ${split_name3} 小于或等于 999  "
				echo "[INFO] 不需要修改"
				new_name=${entry}
			else
				echo "[INFO] ${split_name3} 大于 999  "
				new_name="01.jpg"
			fi
		fi
		echo "[INFO] new_name = "${new_name}
	    mv "./"${p_dir}"/"${entry} "./"${p_dir}"/"${new_name}
	done
    # 返回值
    # echo ${new_name};
}


#    / **  
#    *〈流程控制〉  
#    *〈该脚本的主函数〉  
#    * @param [无]  
#    * @return [无]  
#    * @exception/throws [无]  
#    * @deprecated  
#    */  
function processControlMain()  
{
    # 打印当前系统时间  
    echo "Start..."  
    date  

    ## 获取当前脚本目录位置
        # 获取当前脚本执行时所在目录位置
        dir=`pwd`
        echo "获取当前脚本目录位置:"${dir}

    # 批量重命名
      dir_path=$1
	  echo "[INFO] dir_path ========================= "$dir_path
	  # subFolderFilesRename $dir_path
	  for entry in `ls $dir_path`; do
	      # echo "[INFO] $entry"
	      cd $dir_path
	      # 执行批量命重名
	      subFolderFilesRename $entry
	      cd -
	  done

    # 打印当前系统时间  
    date  
    echo "The End."  
}

# 执行入口 
# 进入脚本目录位置
#cd `dirname $0`
# 获取当前脚本目录位置
shellfilepath=`pwd`'/'$0
# 打印脚本目录地址
echo "[INFO]: 脚本地址 "${shellfilepath}

if true  
# if false  
then  
    echo "[Debug] true"
    # 设置时区
    # TZ=UTC
    # 开始执行  从标准输入中读取并同时写入到标准输出和指定的文件上 
    ## 拼接日志文件地址
    #logfilepath=`pwd`'/'$0'.log'
    #logfilepath=`pwd`'/'$0'-'$(date +%Y%m%d)'.log'
    logfilepath=$0'-'$(date +%Y%m%d)'.log'
    #logfilepath=`pwd`'/'$0'-'$(date +%y%m%d-%H-%M-%S)'.log'
    ## 打印日志文件地址(脚本文件所在地的)
    echo "[INFO]: 日志地址" ${logfilepath}
    ## 打印日志文件地址（指定目录）
    #logfilepath=$HOME'/Downloads/'$0'-'$(date +%Y%m%d)'.log'
    echo "[INFO]: 日志地址" ${logfilepath}
    processControlMain $1 | tee -a ${logfilepath}
else  
    echo "[Debug] false"  
    ## 函数单元测试  
    #  
fi  

# 脚本结束  